//
// WinPcap.net
//
// Copyright (C) 2005 Matthew Ward
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
//
// Matthew Ward (mrward@users.sourceforge.net)


using System;

namespace WinPcap
{
	/// <summary>
	/// The Tcp control type (SYN, RST, ACK, FIN etc).
	/// </summary>
	[ Flags ]
	public enum TcpControlTypes
	{
		/// <summary>
		/// Control type is unknown.
		/// </summary>
		None = 0,

		/// <summary>
		/// FIN: No more data from sender.
		/// </summary>
		Fin = 0x01,

		/// <summary>
		/// SYN:  Synchronize sequence numbers
		/// </summary>
		Syn = 0x02,

		/// <summary>
		/// RST:  Reset the connection
		/// </summary>
		Rst = 0x04,

		/// <summary>
		/// PSH:  Push Function
		/// </summary>
		Psh = 0x08,

		/// <summary>
		/// ACK:  Acknowledgment field significant
		/// </summary>
		Ack = 0x10,

		/// <summary>
		/// URG:  Urgent Pointer field significant
		/// </summary>
		Urg = 0x20,

		/// <summary>
		/// ECN Echo
		/// </summary>
		EcnEcho = 0x40,
		
		/// <summary>
		/// ECN Cwnd Reduced
		/// </summary>
		Cwr = 0x80

	}
}
